GPIOD 使用说明

Copyright © Quectel Wireless Solutions Co., Ltd. 2026. All rights reserved.


本文档说明 Quectel Pi M1/L1 上使用 gpiod 工具检查和控制 GPIO 的常用命令。当前连接的开发板验证为 libgpiod v1.6.3 。

安装与确认

sudo apt update
sudo apt install -y gpiod
gpiodetect --version
gpiodetect
gpioinfo

命令

用途

gpiodetect

查看 GPIO 控制器

gpioinfo

查看 GPIO line 状态和占用情况

gpioget

读取输入状态

gpioset

设置输出状态

gpiomon

监听边沿事件

控制器识别

当前开发板示例输出如下,实际项目应以当前板端输出为准。

gpiochip0 [400000.pinctrl] (114 lines)
gpiochip1 [1c40000.qcom,spmi:qcom,pm6125@0] (9 lines)
gpiochip2 [soc:spf_core_platform:lpi_pinct] (19 lines)

常用命令

# 查看主控制器线路
gpioinfo /dev/gpiochip0

# 读取 gpiochip0 的 line 36
gpioget gpiochip0 36

# 输出高电平并保持 5 秒
gpioset --mode=time --sec=5 gpiochip0 36=1

# 监听上升沿事件
gpiomon --rising-edge gpiochip0 36

版本差异

功能

当前 v1 写法

较新资料中可能出现的写法

读取

gpioget gpiochip0 36

gpioget -c gpiochip0 36

输出保持

gpioset --mode=time --sec=5 gpiochip0 36=1

gpioset -c gpiochip0 -p 5s 36=1

上升沿监听

gpiomon --rising-edge gpiochip0 36

gpiomon -c gpiochip0 -e rising 36

注意事项

  • GPIO line offset 不等于物理排针编号。

  • [used] 或已有 consumer 的线路不建议直接控制。

  • gpioset 进程退出后,输出保持状态可能恢复默认,不应依赖退出后的残留电平。